AWS Backupで大阪リージョンで稼働するEC2環境を保護してみた
AWSチームのすずきです。
2021年3月に開設された大阪リージョンで稼働するシステムのデータを保護するため、 AWS Backup を設定する機会がありましたので紹介させて頂きます。
概要図
IAM設定
デフォルトのサービスロール「AWSBackupDefaultServiceRole」を利用しました。
過去にAWS Backup の利用実績が無いアカウントでは、以下の記事を参考に事前にサービスロールを追加してください。
AWSBackup設定
東京リージョン
DRを想定したAMIのコピー先とする東京リージョンに、CloudFormationを利用して「BackupVault」を作成しました。
AWSTemplateFormatVersion: "2010-09-09" Description: "AWS Backup BackupVault (DR destination)" Resources: BackupVault: Type: AWS::Backup::BackupVault Properties: BackupVaultName: !Sub 'BackupVault-Osaka-DR' Outputs: BackupVaultArn: Value: !GetAtt 'BackupVault.BackupVaultArn'
「BackupVault」のARNは、大阪リージョンのAWS Backup設定で利用します。
大阪リージョン
大阪リージョンに 「BackupPlan」と 「BackupVault」を作成しました。
- コピー先は、東京リージョンで作成した「BackupVault」のARNを引数で指定しました。
AWSTemplateFormatVersion: '2010-09-09' Description: AWS Backup EC2 osaka Parameters: DrBackupVaultArn: Description: DestinationBackupVaultArn Type: String Default: arn:aws:backup:ap-northeast-1:000000000000:backup-vault:BackupVault-Osaka-DR TargetEc2Tag: Description: Backup target EC2 tag Type: String Default: cm-aws-backup-1 Resources: BackupVault: Type: AWS::Backup::BackupVault Properties: BackupVaultName: !Sub 'BackupVault-Osaka-EC2' BackupPlan: Type: AWS::Backup::BackupPlan DependsOn: BackupVault Properties: BackupPlan: BackupPlanName: !Sub 'BackupPlan-Osaka-EC2' AdvancedBackupSettings: - ResourceType: EC2 BackupOptions: WindowsVSS: disabled BackupPlanRule: - RuleName: RuleForDailyBackups StartWindowMinutes: 60 CompletionWindowMinutes: 120 TargetBackupVault: !Ref 'BackupVault' ScheduleExpression: cron(0 16 ? * 1-7 *) Lifecycle: DeleteAfterDays: 7 CopyActions: - DestinationBackupVaultArn: !Ref 'DrBackupVaultArn' Lifecycle: DeleteAfterDays: 7 TagBasedBackupSelection: Type: AWS::Backup::BackupSelection Properties: BackupSelection: SelectionName: TagBasedBackupSelection IamRoleArn: !Sub 'arn:aws:iam::${AWS::AccountId}:role/service-role/AWSBackupDefaultServiceRole' ListOfTags: - ConditionType: STRINGEQUALS ConditionKey: !Ref 'TargetEc2Tag' ConditionValue: enable BackupPlanId: !Ref 'BackupPlan' DependsOn: BackupPlan
バックアッププラン設定
ScheduleExpression
- 毎日、日本時間の深夜1時台に開始する設定としました。
StartWindowMinutes、CompletionWindowMinutes
- 他の処理に影響する事を避けるため、日本時間の深夜3時までに完了する指定としました。
WindowsVSS
- Linux環境の保護の為、指定は無効としました。
バックアップ対象設定
- 引数「TargetEc2Tag」に一致するタグの値が「enable」であるEC2を対象としました。
動作確認
バックアップ頻度を一時的に「毎時」に変更し、動作確認を試みました。
大阪
- ジョブ情報
東京
- ボールド情報
まとめ
大阪リージョンで AWS Backup を利用したEC2のAMI作成、リージョン間コピーが出来る事が確認できました。
DRを想定した利用の可能性がある場合、退避したAMIを利用したリストアの検証を頂く事をおすすめします。
3/2の大阪リージョン開設直後は AWS Backupは未サポートでしたが、データ消失リスクを軽減する手段としてご活用ください。